initial commit
[clinton/prusa3.git] / old stuff / endstop-holder.scad
1 // PRUSA Mendel
2 // Endstop holder
3 // Used to attach endstops to 8mm rods
4 // GNU GPL v3
5 // Josef Průša
6 // josefprusa@me.com
7 // prusadjs.cz
8 // http://www.reprap.org/wiki/Prusa_Mendel
9 // http://github.com/prusajr/PrusaMendel
10
11 include <configuration.scad>
12
13 /**
14 * @id endstop-holder
15 * @name Endstop holder
16 * @category Printed
17 * @using 1 m3x20xhex
18 * @using 1 m3nut
19 * @using 2 m3washer
20 */
21 module endstop(){
22 outer_diameter = m8_diameter/2+3.3;
23 screw_hole_spacing = 20;
24 opening_size = m8_diameter-1.5; //openingsize
25
26 difference(){
27 union(){
28
29
30 translate([outer_diameter, outer_diameter, 0]) cylinder(h =10, r = outer_diameter, $fn = 20);
31 translate([outer_diameter, 0, 0]) cube([15.5,outer_diameter*2,10]);
32 translate([-27, 0, 0]) cube([35, 4, 10]);
33 translate([17, 17.5, 5]) rotate([90, 0, 0]) #cylinder(h =5, r = 5.77, $fn = 6);
34 }
35
36
37
38
39 translate([9, outer_diameter-opening_size/2, 0]) cube([18,opening_size,20]);
40 translate([outer_diameter, outer_diameter, 0]) cylinder(h =20, r = m8_diameter/2, $fn = 18);
41
42 //Securing hole
43 translate([17, 17, 5]) rotate([90, 0, 0]) cylinder(h =20, r = m3_diameter/2, $fn = 10);
44 translate([17, 19.5, 5]) rotate([90, 0, 0]) #cylinder(h =5, r = m3_nut_diameter_horizontal/2, $fn = 6);
45
46 translate([17, 17, 5]) rotate([90, 0, 0]) #cylinder(h =20, r = m3_diameter/2, $fn = 10);
47 translate([-4, 17, 5]) rotate([90, 0, 0]) cylinder(h =20, r = m3_diameter/2, $fn = 10);
48 translate([-(4+screw_hole_spacing), 17, 5]) rotate([90, 0, 0]) cylinder(h =20, r = m3_diameter/2, $fn = 10);
49 }
50 }
51 endstop();
52